{
gbuint16 result = 0;
- fread(&result, sizeof (result), 1, f);
+ if (!fread(&result, sizeof (result), 1, f)) {
+ fatal(MYNAME ": Attempt to read past EOF");
+ }
return le_read16(&result);
}
{
gbuint32 result = 0;
- fread(&result, sizeof (result), 1, f);
+ if (!fread(&result, sizeof (result), 1, f))
+ fatal(MYNAME ": Attempt to read past EOF");
return le_read32(&result);
}
{
unsigned char *result = (unsigned char *) xmalloc(size);
- fread(result, size, 1, f);
+ if (!fread(result, size, 1, f))
+ fatal(MYNAME ": Attempt to read past EOF");
return result;
}